草庐IT

SQL Server 游标

全部标签

mysql - 没有偏移量的基于游标的分页?

对于大型数据集,offset基于游标的分页变得很慢,因此更快的方法是使用基于游标的分页。基本上,一个anchor,数据库知道从该点开始查找结果。考虑到这一点,这是我面临的问题:我有一张tabletv_watchers自动递增id,mins_watching_tv,和user_id(下面总共20行fiddle)。在这个例子中user_id会是一样的1,所以不用担心。我们想按看电视的分钟数从高到​​低排序。这很容易使用这个查询来完成:SELECT*FROMtv_watchersORDERBYmins_watching_tvDESC,idASC这将返回按id以这种方式排序的20个字段的正确顺

MySQL 游标错误 1193 : Unknown system variable

我是第一次创建游标。(引用thissite)到目前为止我做了这个(CREATEPROCEDURE`abc`.`cursordemo`(INstart_dateDATETIME,INend_dateDATETIME)BEGINDECLAREdoneINTDEFAULTFALSE;DECLAREk1,k2,g,s,last_statusVARCHAR(45);DECLAREb,cINT;DECLAREcur1CURSORFORSELECT`key`FROM`abc`.`temp_weekly`;DECLARECONTINUEHANDLERFORNOTFOUNDSETdone=TRUE;OP

mysql - 从存储过程返回游标

如何从MySQL中的存储过程返回游标? 最佳答案 简单地说:不要这样做!说真的:这表明您的设计存在缺陷。 关于mysql-从存储过程返回游标,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1206107/

php - 带有游标的存储过程以奇怪的方式执行

我有一个存储过程,它应该使用游标处理表中的行。该过程大部分时间都有效,但有时它只是没有完全执行。我知道这一点是因为我有一个简单的调试工具,嵌入到代码中,它将特定的行和变量记录到专用的调试表中。最有趣的是,从PHP运行时,问题总是会发生。如果我使用mysql客户端,我从来没有遇到过这个问题。过程(此处以略微缩短的方式呈现)如下:CREATEPROCEDUREfindnextedge(INlastidBIGINT)findnext_context:BEGINDECLAREstopBOOLEANDEFAULTFALSE;DECLAREcountINTDEFAULT0;DECLAREcur_f

java - 出于单元测试的目的,哪个内存中 Java 数据库最接近 MySQL 和 SqlServer?

我正在寻找一个内存数据库来对我的数据访问层进行单元测试。在生产中,我的大部分类(class)将针对MySQL5.1运行,但有些类(class)将具有对MicrosoftSQLServer的读取权限。过去,I'vehadissueswithdifferencesdialectsbetweendifferentdatabasestrippingupunittesting(导致在执行前使用AspectJ破坏查询!!!)所以我想尽可能避免这种情况。所以,我想知道哪个Java内存数据库在行为上最接近MySql和SQLServer?我主要关心的是MySQL,因为我们使用它最多而且-AFAIK-它具

php - 是否可以在 MySQL UDF 的 IF 条件中声明游标

是否可以在if语句中声明游标?如果可能,我该怎么做?因为我刚刚做了这样的光标CREATEFUNCTION`fn_test`(ProductIDBIGINT(20))RETURNSDECIMAL(10,2)BEGINDECLAREPrductDiscValueDECIMAL(10,2);DECLAREDiscTypeINT(1);DECLAREDiscValueDESIMAL(10,2);IFProductID!=0THENSETPrductDiscValue=(SELECTDiscountvalue,DiscountTypeFROMdiscountWHEREFIND_IN_SET(Pr

python - 如何从 postgres/mysql 游标对象获取数据库名称

我有几个向我公开的postgres和mysql游标对象,它们是在某个宇宙中创建的。如何从这些游标对象中找到数据库名称(以及有关该数据库的其他信息)?cursor.__dict__没有给出任何有用的信息。 最佳答案 如果你也有连接(称之为conn):conn.info.dbname 关于python-如何从postgres/mysql游标对象获取数据库名称,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com

Mysql游标未按正确顺序排序结果

这是对我的原始代码的抽象,因为它会让你们更容易阅读。我是Mysql存储过程和Cursors的新手。发生的事情是,当我在查询中设置ORDERBY指令时,Cursor没有正确排序结果。这里是用于重现问题的表的所有结构和数据。日志表:DROPTABLEIFEXISTS`log`;CREATETABLE`log`(`key`textNOTNULL,`value`textNOTNULL)ENGINE=InnoDBDEFAULTCHARSET=latin1;测试表:DROPTABLEIFEXISTS`test1`;CREATETABLE`test1`(`ID`bigint(8)unsignedNO

java - 使用服务器游标获取与流式传输之间的区别

使用服务器游标获取结果和使用流获取结果在行为方面有什么区别?可以激活前者(服务器游标):通过设置useCursorFetch=true为每个语句设置和defaultFetchSize=N在连接属性中。(其中N是一个大于零的数字。)或通过在连接上初始设置useCursorFetch=true或com.mysql.jdbc.Connection.setUseCursorFetch(true)来单独声明,然后是java.sql.Statement.setFetchSize(N)在语句上。后者(streaming)可以被激活:通过设置java.sql.Statement.setFetchSiz

mysql - 我对 MySQLdb 服务器端游标和客户端游标感到困惑

我正在使用python-mysql(MySQLdb)查询Mysql服务器。游标模块有两种:一种是客户端游标,如:cursor=db.cursor(MySQLdb.cursors.DictCursor)另一种是服务端游标,如:cursor=db.cursor(MySQLdb.cursors.SSDictCursor)文档说服务器端游标意味着Mysql会在mysql服务器端缓存一些结果,然后将它们发送给客户端。我对此很困惑,比方说,如果我想杀死一个mysql服务器,我可以只使用多个服务器端游标,然后mysql就会因为内存耗尽而死掉。此外,服务器大小光标是否有意义?默认情况下,Mysql机制